// dwr.engine.setAsync(false);
var com = new Object();
com.mainPanel = new Object();//页面主panel
com.provinceCode = '320000'; // 330000
com.provinceName = '南通市'; // 330000
com.cityCode = '320600';// 静态信息默认读取的市级代码 330200
com.pageCount = 20;
var serverURL = ((window.location.href).split("//")[1]).split("/")[0];
var serverLogin = "login.html";

//全局异常
dwr.engine.setErrorHandler(errHandler);// 定义全局错误处理器
function errHandler(msg, exception) {
	try {
		Ext.MessageBox.hide();
	} catch (e) {}
	if (msg.toString() != null && msg.toString() != '') {
		if (msg.toString() == '-10000') {
			window.location = "userindex.do"; //login_action
		} else if (msg.toString().indexOf("code: 0x80004005") != -1) {
			Ext.example.msg('提示', '服务器关闭，请与管理员联系。');
			return false;
		} else if (msg == 'Timeout') {
			Ext.example.msg('提示', '数据库或远程连接超时，请稍后再试。');
			return false;
		} else if (msg.toString().indexOf("MySQLSyntaxErrorException: Table") != -1) {
			Ext.example.msg('提示', '数据库没有这张表。\r\n' + msg);//数据库没有这张表。
			return false;
		} else {
			alert(msg);
			return false;
		}
	} else {
		Ext.example.msg('提示', '后台程序空指针异常');
		return false;
	}
}

// struts2 Ext store调用url全局异常
function struts2ErrorHander(This, options, response, error) {
	if (error) {
		var url = response.responseText;
		if (url == 'login.html') window.location = url; //login_action
	}
}

// struts2 Ext treeGrid调用url全局异常
function struts2ErrorHander2(This, node, response) {
	var url = response.responseText;
	if (url == 'login.html') window.location = url; //login_action
}

function waitting2() {
	var mask = new Ext.LoadMask(Ext.getBody(), {
		msg : '正在计算数据......',
		width : 800,
		removeMask : true// 完成后移除
	});
	mask.show();
	return mask;
}

function getttingData() {
	var mask = new Ext.LoadMask(Ext.getBody(), {
		msg : '正在获取数据......',
		width : 800,
		removeMask : true // 完成后移除
	});
	mask.show();
	return mask;
}

var formatDate = function(value, cellmeta, record) {
	if(value==null || value=='') return value;
	if(value.toLocaleString().indexOf("-")!=-1){
		return value;
	}
	else{
		return value.dateFormat('Y-m-d');
	}
};

function waitting() {
	Ext.MessageBox.show({
		msg : '正在保存数据, 请等候...',
		progressText : 'Saving...',
		width : 300,
		wait : true,
		waitConfig : {
			interval : 200
		},
		icon : 'ext-mb-download'
	});
}

var va_grid = function(value, metadata, record) {
	var id = parseFloat(value);
	if (value.toString().indexOf(".") != -1) {
		return id.toFixed(2);
	} else {
		return id;
	}
};

var va_gridNum = function(value, metadata, record) {
	if (value.toString().indexOf(".") != -1) {
		return parseFloat(value).toFixed(2);
	} else {
		return value;
	}
};
	
//该字段可以双击进行编辑，<br>焦点离开后自动保存数据库。
function renderName(value, cellmeta, record, rowIndex, columnIndex, store) {
	cellmeta.attr = 'style="white-space:normal;"';
	if (value == null || value == '')value = '\t --- ';
	return '<div ext:qtitle=\'提示\' ext:qtip=\'修改\'>'+ value + '</div>';
};

function gettting() {
	Ext.MessageBox.show({
		msg : '正在读取数据, 请等候...',
		progressText : 'readding...',
		width : 300,
		wait : true,
		waitConfig : {
			interval : 200
		},
		icon : 'ext-mb-download'
	});
}

// 添加常用的验证
Ext.apply(Ext.form.VTypes, {
	ifInt : function(v) {
		try {
			var dou = parseFloat(v);
			if (dou >= 1 && dou <= 2000)
				return true;
			else
				return false;
		} catch (e) {
			return false;
		}
	},
	ifIntText : '格式不正确,范围在1 - 2000之间。',
	ifIntMask : /^[\d]+$/,
	
	ifInt20 : function(v) {
		if(v=='' || v==null) return true;
		try {
			var dou = parseFloat(v);
			if (dou >= 0 && dou <= 20)
				return true;
			else
				return false;
		} catch (e) {
			return false;
		}
	},
	ifInt20Text : '格式不正确,范围在0 - 20之间。',
	ifInt20Mask : /^[\d]+$/,

	ifbigInt : function(v) {
		try {
			var dou = parseFloat(v);
			if (dou >= 0 && dou <= 90000000)
				return true;
			else
				return false;
		} catch (e) {
			return false;
		}
	},
	ifbigIntText : '格式不正确,范围在0 - 90000000之间。',
	ifbigIntMask : /^[\d]+$/,

	ifDouble : function(v) {
		try {
			var dou = parseFloat(v);
			if (dou >= -100 && dou <= 2000)
				return true;
			else
				return false;
		} catch (e) {
			return false;
		}

	},
	ifDoubleText : '格式不正确,范围在-100 - 2000之间。',
	ifDoubleMask : /^[\d.-]+$/,

	ifDouble2 : function(v) {
		try {
			var dou = parseFloat(v);
			if (dou >= 0 && dou <= 2000)
				return true;
			else
				return false;
		} catch (e) {
			return false;
		}

	},
	ifDouble2Text : '格式不正确,范围在0 - 2000之间。',
	ifDouble2Mask : /^[\d.-]+$/,
			
	ifDouble200000 : function(v) {
		try {
			var dou = parseFloat(v);
			if (dou >= 0 && dou <= 2000000000)
				return true;
			else
				return false;
		} catch (e) {
			return false;
		}

	},
	ifDouble200000Text : '格式不正确,范围在0 - 2000000000之间。',
	ifDouble200000Mask : /^[\d.-]+$/,

	ifDouble099 : function(v) {
		try {
			var dou = parseFloat(v);
			if (dou >= 0 && dou <= 99)
				return true;
			else
				return false;
		} catch (e) {
			return false;
		}

	},
	ifDouble099Text : '格式不正确,范围在0 - 99之间。',
	ifDouble099Mask : /^[\d.-]+$/,
	
	if150length : function(v) {
		v = toTXT(v);
		if (v.length > 150) {
			return false;
		} else{
			return true;
		}
	},
	if150lengthText : '该输入项不能超过150个字符。',
			
	ifhtml : function(v) {
		var html = trimForRN2(v);
		if (html.length == v.length) {
			if (html == '--') {
				return false;
			}
			return /^[\a-zA-Z0-9０-９\u4E00-\u9FA5\ _。，,.!！？?‘’“”、@《》-]+$/.test(html);
		} else{
			return false;
		}
	},
	ifhtmlText : '输入必须为数字、英文、汉字或指定字符。',
	ifhtmlMask : /^[\a-zA-Z0-9０-９\u4E00-\u9FA5\ _。，,.!！？?‘’“”、@《》-]+$/,
			
	ifTitle : function(v) {
		if (trimForRN2(v).length == v.length) {
			if (trimForRN2(v) == '--') {
				return false;
			}
			return /^[\a-zA-Z0-9０-９\u4E00-\u9FA5\ _]+$/.test(v);
		} else{
			return false;
		}
	},
	ifTitleText : '输入必须为数字、英文、汉字。',
	ifTitleMask : /^[\a-zA-Z0-9０-９\u4E00-\u9FA5\ _]+$/,
	
	IPAddress : function(v) {
		return /^(\+?[1-9][0-9]?|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/
				.test(v);
	},
	IPAddressText : 'ip地址不合法',
	IPAddressMask : /[\d\.]/i
});


